import { useStore } from "vuex";
import { useRouter } from "vue-router";
import { ElMessage } from "element-plus";

export default {
  setup(props) {
    const store = useStore();
    const router = useRouter();

    const permissionLogin = () => {
      if (store.state.user == null) {
        ElMessage({
          type: "warning",
          message: "请您先登录!",
        });
        // 跳转到首页
        router.push("/index");
        return false;
      }
      return true;
    };

    const isAdmin = () => {
      // 先判断是否登录
      if (!permissionLogin()) {
        return false;
      }
      // 登录了
      if (store.state.user.pos != "管理员") {
        // 非管理员
        ElMessage({
          message: "您的权限不足，请联系管理员!",
          type: "warning",
        });
        // 跳转到首页
        router.push("/index");
        return false;
      }
      return true;
    };

    return {
      permissionLogin,
      isAdmin,
    };
  },
};

/**
 * 判断是否是管理员，非管理员跳转到首页并提示相关信息
 */
export function isAdmin() {
  // 先判断是否登录
  if (!permissionLogin()) {
    return false;
  }
  // 登录了
  if (store.state.user.pos != "管理员") {
    // 非管理员
    ElMessage({
      message: "您的权限不足，请联系管理员!",
      type: "warning",
    });
    // 跳转到首页
    router.push("/index");
    return false;
  }
  return true;
}
